// MainLon 类是 JavaFX 应用程序的入口点，它继承自 Application 类，并重写了 start 方法来加载登录界面

package com.example.mychess;

import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Scene;
import javafx.stage.Stage;

import java.io.IOException;

/**
 * 主类，用于启动应用程序并展示登录页面。
 */
public class MainLon extends Application {

    /**
     * JavaFX 的启动方法，用于初始化窗口和加载 FXML 文件创建的视图。
     *
     * @param stage 由 JavaFX 系统提供的初始舞台（Stage）对象
     * @throws IOException 如果在加载 FXML 文件时发生错误，则抛出此异常
     */
    @Override
    public void start(Stage stage) throws IOException {
        // 将全局变量 LogonController 中的 stage 设置为当前的舞台
        stage = LogonController.stage;

        // 创建 FXMLLoader 对象，指定要加载的 FXML 资源文件路径
        FXMLLoader fxmlLoader = new FXMLLoader(BMain.class.getResource("logon.fxml"));

        // 加载 FXML 文件并生成对应的 UI 根节点
        Scene scene = new Scene(fxmlLoader.load(), 600, 500);

        // 设置舞台标题
        stage.setTitle("登录页面");

        // 设置舞台场景为刚加载好的场景
        stage.setScene(scene);

        // 显示舞台
        stage.show();
    }

    /**
     * 应用程序主入口点，调用 launch 方法启动 JavaFX 应用程序。
     *
     * @param args 命令行参数，这里没有使用
     */
    public static void main(String[] args) {
        launch(args);
    }
}